package controller;

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;


import view.Impresor;

import model.Algo;
import model.ContenedorDeDatos;

public class ControladorDeTexto implements KeyListener {

	private ContenedorDeDatos datos;
	private Impresor ventanaPrincipal;
	private Algo elementoActual = null;
	
	public ControladorDeTexto(Impresor ventana,ContenedorDeDatos datos ){
		this.ventanaPrincipal = ventana;
		this.datos = datos;
	}
	
	public void keyPressed(KeyEvent e) {
		if(e.getKeyCode() == KeyEvent.VK_1){
			this.elementoActual = this.ventanaPrincipal.getAlgo1();
			this.ventanaPrincipal.imprimir(" Elemento 1 seleccionado ");
		}
		if(e.getKeyCode() == KeyEvent.VK_2){
			this.elementoActual = this.ventanaPrincipal.getAlgo2();
			this.ventanaPrincipal.imprimir(" Elemento 2 seleccionado ");
		}
		if(e.getKeyCode() == KeyEvent.VK_3){
			this.elementoActual = this.ventanaPrincipal.getAlgo3();
			this.ventanaPrincipal.imprimir(" Elemento 3 seleccionado ");
		}
		
		if(e.getKeyCode() == KeyEvent.VK_G){
			if ( this.elementoActual != null){
				this.datos.guardarAlgo(elementoActual);
				this.ventanaPrincipal.imprimir(" El elemento "+ elementoActual.getId()+" ha sido guardado");
				this.elementoActual = null;
			}
		}
		
		if(e.getKeyCode() == KeyEvent.VK_M){
			Algo algo = this.datos.dameElPrimero();
			
			if(algo != null){
				this.ventanaPrincipal.imprimir(" El elemento extraido es el " +algo.getId());
			}	
			else{
				this.ventanaPrincipal.imprimir(" No Hay Elementos para mostrar");
			}
		}
		if(e.getKeyCode() == KeyEvent.VK_I){
			this.ventanaPrincipal.imprimir("");
		}
		
		
	}

	@Override
	public void keyReleased(KeyEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void keyTyped(KeyEvent e) {
		// TODO Auto-generated method stub
		
	}
	
	
	
}
